#ifndef _FIG_BOSS_ATTACKMOVE_GODOWN_H_
#define _FIG_BOSS_ATTACKMOVE_GODOWN_H_

#include "fig_boss_attackmove.h"

class FIGBossAttackMoveManager;

// transform back ... go down .. appear from top and transform again

class FIGBossAttackMoveGoDown : public FIGBossAttackMove
{
public:


	enum ATTACKGODOWN_STATE
	{
		STATE_TRANSFORM_TO_NORMAL,
		STATE_TRANSFORM_BACK,
		STATE_GOINGDOWN,
		STATE_COMINGIN_TOP,
		STATE_TRANSFORM,

		STATE_C,

	};

	FIGBossAttackMoveGoDown(FIGBossAttackMoveManager* pManager);
	

	
	virtual void				Tick(float dt);
	virtual bool				ShouldDisableOtherMovement(){ return false; };
	virtual	bool				ShouldDisableAttack() {return true; };
	virtual	bool				ShouldDisableBoneMovement() {return true; };

	virtual void				Start(float Delay);
	
protected:

	void						NextState();
	
	ATTACKGODOWN_STATE			m_State;
	float						m_Acceleration;
	
};

#endif			 // _FIG_BOSS_ATTACKMOVE_GODOWN_H_